This invention relates to data communication systems, and more particularly, to a system for forwarding frames received from backbone nodes in a multiport network switch.
A multiport switch may be provided in a data communication network to enable data communication between multiple network stations (desktop nodes) connected to various ports of the switch. Moreover, at least one port of the switch, for example, a gigabit port, may have a backbone connection for supporting data communication with backbone network nodes that are not directly connected to that switch. For example, such backbone nodes may be linked to the switch through a higher-level network switch or router.
For example, a virtual LAN (VLAN) may combine desktop and backbone nodes by department, type of user, or primary application. Workstations in a VLAN behave as if they are connected to the same wire even though they may actually be physically located on different segments of a LAN.
A logical connection may be created between receive and transmit ports of the switch to forward received frames to appropriate destinations. Based on frame header information, a decision making engine selectively controls forwarding received frames to a destination station. To make the frame forwarding decision, the decision making engine searches a look-up address table that stores address information of network nodes learned from receive frames. The network switch may be provided with an address table static random access memory (SRAM) for storing the address table.
To reduce the size of the address table SRAM it would be desirable to limit the amount of address information stored in the address table. As a large number of backbone nodes may be linked to the network switch through the switch""s backbone connections, it would be desirable to avoid storing address information of the backbone nodes. Therefore, there is a need for a backbone forwarding scheme for forwarding frames received from the backbone nodes, without learning and storing their address information.
The invention provides a novel method of data forwarding in a network switch having multiple ports including at least one backbone port for providing data communications with backbone network nodes. The method comprises comparing destination information of a received data packet with a predetermined set of address data, and forwarding the received data packet to the at least one backbone port if the packet""s destination information is not found in the predetermined set of address data. For example, the predetermined set of address data may be arranged in an address table.
Further, the source address information of the received data packet may be compared with the predetermined set of address data. In a regular mode of operation, address information of the received data packet is added to the address table if the packet""s source address information is not found. However, in a backbone mode of operation, the address information of a data packet received from a backbone port is prevented from being added to the address table.
The data forwarding method of the present invention may be implemented for backbone ports supporting multiple VLANs. For example, if the destination information of a first data packet received from a first VLAN is not found in the address table, the first data packet is forwarded to at least one backbone port arranged for that VLAN. Similarly, a second data packet received from a second VLAN is forwarded to at least one backbone port provided for the second VLAN if the packet""s destination information is not found in the address table.
In accordance with the present invention, the network switch comprises a decision making engine responsive to a received data packet to control its forwarding to a transmit port. The decision making engine includes a destination address logic circuit for comparing destination information of the received data packet with the predetermined set of address data. The decision making engine is configured for forwarding the received data packet to at least one backbone port if the destination information of the received data packet is not found in the address table. Preferably, the decision making engine comprises a backbone vector storage for identifying backbone ports for multiple VLANs supported by the network switch.
The decision making engine may further comprise a source address logic circuit for comparing source address information of the received data packet with the predetermined set of address data. The source address logic circuit may be operable in a regular mode to add address information of the received data packet to the address table if the packet""s source address information is not found in the table. In a backbone mode of operation, the source address logic circuit prevents the address information of a data packet received from a backbone port from being added to the address table.
Various objects and features of the present invention will become more readily apparent to those skilled in the art from the following description of a specific embodiment thereof, especially when taken in conjunction with the accompanying drawings.